Date: Sat, 27 Aug 94 04:30:02 PDT From: Advanced Amateur Radio Networking Group Errors-To: TCP-Group-Errors@UCSD.Edu Reply-To: TCP-Group@UCSD.Edu Precedence: Bulk Subject: TCP-Group Digest V94 #185 To: tcp-group-digest TCP-Group Digest Sat, 27 Aug 94 Volume 94 : Issue 185 Today's Topics: Changing environment (was RE: Dos Computers) Client only NOS Computers, ethernet and lightning protection How does IP encapsulation work? JOTA Operation in GB mailbox autoconnect Optical isolator for TNC connection Port 513 call/response Windows and SLIP Send Replies or notes for publication to: . Subscription requests to . Problems you can't solve otherwise to brian@ucsd.edu. Archives of past issues of the TCP-Group Digest are available (by FTP only) from UCSD.Edu in directory "mailarchives". We trust that readers are intelligent enough to realize that all text herein consists of personal comments and does not represent the official policies or positions of any party. Your mileage may vary. So there. ---------------------------------------------------------------------- Date: Fri, 26 Aug 94 23:00 WET DST From: glg@balrog.k8lt.ampr.org (Gary L. Grebus) Subject: Changing environment (was RE: Dos Computers) To: jks@giskard.utmem.edu >From: jks@giskard.utmem.edu > >1. Is there a smooth way to get AX.25 protocol into, say, a system driver >or "packet-driver-like-entity" for the major internal SCC cards like the >PI/PI2/DRSI boards? Could it be done so that existing software could use it? > It wasn't too hard to hack AX.25 UI frame support on top of the ETHERSLIP packet driver. The same sort of addition could be made to other packet drivers. Most of the current stacks will talk to an Ethernet class packet driver. > >2. Would you want AX.25 and SCC together or keep them separate? A next step might be to repackage the AX.25 support as a separate module, like the "shims" that are used to interface packet drivers to stacks that want ODI or NDIS drivers. That would make it useable with any hardware driver. It would likely get a little ugly, though, since the packet driver API was really intended only for hardware drivers. > >3. Does Trumpet socket software work over radio now at all? If so can you >use all common speeds, or does it require 9600 or greater as a minimum? >From my limited testing, the Trumpet stack "sort of" works at 1200 baud, if you have an extremely low error rate path, and don't use things like the DNS name resolution (which have fixed timeout values at the application level). Another consideration is that most apps will assume reasonable bandwidth e.g. a Windows FTP application will want to keep grabbing the current directory listing so you can "point and click". > >4. Is Trumpet copyleft? Should a "radio enabled" version be engineered if >so and it needs to be? It's fully proprietary, as far as I know. That's a serious drawback of all of the Windows stacks I've seen...there's no way to fix them to be "radio friendly". The only stack I've run across with source code is WATTCP, but that's a DOS stack, and doesn't support Winsock. (The lack of source code is one reason I'm more inclined to hack under Unix than Windows.) I just wish I had more time to actually work on trying to implement some of this stuff. 73, /gary Gary L. Grebus Home: glg@k8lt.ampr.org (decvax!balrog!glg) Brookline, NH Work: grebus@bxb.dec.com Ham Packet: K8LT@WA1PHY.#EMA.MA.USA ------------------------------ Date: Fri, 26 Aug 94 09:30:14 PDT From: ve7qc@ve7mdl.ampr.org Subject: Client only NOS To: tcp-group@ucsd.edu Hello... can someone point me to a FTP site where I can pick up a "smallish" version of NOS with only clients. I am not interested in running any servers, but it has to be POP3 capable. Just something to SMTP/POP with the local gateway and where I dont have to exit to run the mailer (VIEW) on DOS 640K. Thanks for any leads... 73 de Bill VE7QC@VE7MDL.ampr.org ------------------------------ Date: Fri, 26 Aug 94 10:51:00 PDT From: "John D. Hays" Subject: Computers, ethernet and lightning protection To: "'TCP Interest Group at UCSD'" It seem to me that with a little homebrew work, one could do the optical isolation on the modem (tnc) to radio connection. If the power supply was properly isolated to the radio, and antennas, etc. were well grounded, then the everything on the digital side should be fine. Sacrificing as little equipment as possible to Thor seems appropriate to me. DE KD7UW John D. Hays jhays@hays.org ------------------------------ Date: Fri, 26 Aug 1994 09:41:37 -0800 (PDT) From: jmorriso@bogomips.ee.ubc.ca (John Paul Morrison) Subject: How does IP encapsulation work? To: TCP-Group@UCSD.EDU How does IP encapsulation work, ie. the code in NOS used for AMPR-to-Internet gateways (IP over IP)? Is there an RFC? Is there a set of specs or can someone explain it? I'd like to write Linux kernel code to implement this. I'd rather start from scratch, instead of deciphering the NOS or 386BSD code. thanks --------------------------------------------------------------------------- BogoMIPS Research Labs -- bogosity research & simulation -- VE7JPM -- jmorriso@bogomips.ee.ubc.ca ve7jpm@ve7jpm.ampr.org jmorriso@rflab.ee.ubc.ca --------------------------------------------------------------------------- ------------------------------ Date: Fri, 26 Aug 94 23:32:05 CST From: k5yfw@k5yfw.ampr.org (Walter D. DuBose - K5YFW) Subject: JOTA Operation in GB To: nos-bbs@hydra.carleton.ca, tcp-group@ucsd.edu While not the ideal channel for this query, would someone in GB contact me or someone who has knowledge of JOTA operation from Gilwell this year during JOTA (15-16 Oct). Will there be operation from Gilwell on the conference bridge as there was last year? I would like to set up a short QSO between our new Alamo Area Counsel BSA Chief Scout Execuative, with a JOTA station at Gilwell between 1600 to 1800 UTC. Best Regards, Walt/K5YFW Alamo Area Council & San Antonio RC JOTA Chairman PS, I used to be a FOX. ------------------------------ Date: Fri, 26 Aug 1994 11:15:13 -0700 From: brian@nothing.ucsd.edu (Brian Kantor) Subject: mailbox autoconnect To: nos-hacks@UCSD.EDU, tcp-group@UCSD.EDU I was cleaning up my home directory and found the patches to the KA9Q code that implements an autoconnect feature for the mailbox. What this does is open a telnet connection to a configured address and port whenever an AX.25 or Net/Rom connection is made to the NOS host. If you have the configuration that Phil and others are using, where a NOS box interfaces your radios, this lets you stick all the servers (BBS, etc) on your BSD Unix host and still let the unwashed AX.25 masses use them. It's not real well debugged, but it's a start. These diffs are for ka9q NOS of about a year ago, not any of the variants. Enjoy. - Brian *** c:\tmp/T0AA.AAA Fri Dec 31 17:40:58 1993 --- mailbox.c Fri Dec 31 17:40:34 1993 *************** *** 47,52 **** --- 47,55 ---- static char *Motd = NULLCHAR; static int Attended = TRUE; /* default to attended mode */ unsigned Maxlet = BM_NLET; + static unsigned Mport = 0; + static int32 Mhost = 0; + static int Mauto = FALSE; /* default to local mode */ char Noperm[] = "Permission denied.\n"; char Nosock[] = "Can't create socket\n"; *************** *** 70,84 **** --- 73,95 ---- static int domaxmsg(int argc,char *argv[],void *p); static int domotd(int argc,char *argv[],void *p); static int dotimeout(int argc,char *argv[],void *p); + static int dohost(int argc,char *argv[],void *p); + static int doport(int argc,char *argv[],void *p); + static int doauto(int argc,char *argv[],void *p); /* mbox subcommand table */ static struct cmds Mbtab[] = { "attend", doattend, 0, 0, NULLCHAR, + "auto", doauto, 0, 0, NULLCHAR, #ifdef AX25 + "host", dohost, 0, 0, NULLCHAR, "kick", dombkick, 0, 0, NULLCHAR, #endif "maxmsg", domaxmsg, 0, 0, NULLCHAR, "motd", domotd, 0, 0, NULLCHAR, + #ifdef AX25 + "port", doport, 0, 0, NULLCHAR, + #endif "status", domboxdisplay, 0, 0, NULLCHAR, #ifdef AX25 "timer", dombtimer, 0, 0, NULLCHAR, *************** *** 111,116 **** --- 122,140 ---- return setbool(&Attended,"Attended flag",argc,argv); } + /* + * if mbox 'auto' mode is set, connects to the remote mbox + * - just autoinitiate a session to a Mhost on Mport + */ + static int + doauto(argc,argv,p) + int argc; + char *argv[]; + void *p; + { + return setbool(&Mauto,"Mbox autoconnect",argc,argv); + } + static int domaxmsg(argc,argv,p) int argc; *************** *** 121,126 **** --- 145,175 ---- } static int + dohost(argc,argv,p) + int argc; + char *argv[]; + void *p; + { + if (argc == 2) + if((Mhost = resolve(argv[1])) == 0){ + printf(Badhost,argv[1]); + return 0; + } + else + printf("Mbox Autoconnect Host: %s\n", inet_ntoa(Mhost)); + return 0; + } + + static int + doport(argc,argv,p) + int argc; + char *argv[]; + void *p; + { + return setuns(&Mport,"Mbox autoconnect port",argc,argv); + } + + static int domotd(argc,argv,p) int argc; char *argv[]; *************** *** 159,165 **** struct mbx *m; char fsocket[MAXSOCKSIZE]; static char *states[] = {"LOGIN","CMD","SUBJ","DATA","REVFWD", ! "TRYING","FORWARD"}; printf("User State S# Where\n"); --- 208,214 ---- struct mbx *m; char fsocket[MAXSOCKSIZE]; static char *states[] = {"LOGIN","CMD","SUBJ","DATA","REVFWD", ! "TRYING","FORWARD","AUTO"}; printf("User State S# Where\n"); *************** *** 271,278 **** return -1; return 0; #endif - case AF_LOCAL: case AF_INET: m->state = MBX_LOGIN; printf(Loginbanner,Hostname); for(;;){ --- 320,327 ---- return -1; return 0; #endif case AF_INET: + case AF_LOCAL: m->state = MBX_LOGIN; printf(Loginbanner,Hostname); for(;;){ *************** *** 289,297 **** fmode(m->user,oldmode); putchar('\n'); #ifdef notdef ! /* This is needed if the password was send before the ! * telnet no-echo options were received. We neeed to ! * flush the eold sequence from the input buffers, sigh */ if(socklen(fileno(m->user),0))/* discard any remaining input */ recv_mbuf(fileno(m->user),NULL,0,NULLCHAR,0); --- 338,346 ---- fmode(m->user,oldmode); putchar('\n'); #ifdef notdef ! /* This is needed if the password was sent before the ! * telnet no-echo options were received. We need to ! * flush the EOL sequence from the input buffers, sigh */ if(socklen(fileno(m->user),0))/* discard any remaining input */ recv_mbuf(fileno(m->user),NULL,0,NULLCHAR,0); *************** *** 348,353 **** --- 397,403 ---- printf("Too many mailbox sessions\n"); return; } + m->user = network; m->escape = 24; /* default escape character is Ctrl-X */ m->type = (int) t; *************** *** 357,362 **** --- 407,425 ---- return; } + /* + * if we're in auto mode, open a telnet-like connection to + * the specified host/port + */ + if (Mauto && Mhost && Mport) { + puts("wait..."); + m->state = MBX_AUTO; + dombremote(p); + exitbbs(m); + fclose(stdout); + return 0; + } + m->state = MBX_CMD; /* start in command state */ /* Now say hi */ *************** *** 377,382 **** --- 440,446 ---- printf((m->sid & MBX_SID) ? ">\n" : Mbmenu, m->current); m->state = MBX_CMD; } + exitbbs(m); /* nasty hack! we may have screwed up reference count */ /* by invoking newproc("smtp_send",....); Fudge it! */ *************** *** 383,388 **** --- 447,453 ---- if((up = itop(fileno(stdout))) != NULLUSOCK) up->refcnt = 1; fclose(stdout); + return; } void *************** *** 400,405 **** --- 465,501 ---- free((char *)m); } + static int + dombremote(p) + void *p; + { + struct mbx *m; + int s, len, i; + char dsocket[MAXSOCKSIZE]; + struct sockaddr_in fsocket; + + fsocket.sin_family = AF_INET; + fsocket.sin_port = Mport; + fsocket.sin_addr.s_addr = Mhost; + + if((s = socket(AF_INET,SOCK_STREAM,0)) == -1){ + printf(Nosock); + return 0; + } + + /* send user ID as first line after connection */ + m = (struct mbx *) p; + m->startmsg = mallocw(80); + len = MAXSOCKSIZE; + i = getpeername(fileno(m->user),dsocket,&len); + sprintf(m->startmsg, "%s@%s\n", + m->name,i != -1 ? psocket(dsocket): Hostname); + + m->escape = 0; /* escape character NULL */ + + return gw_connect(m,s,(char *)&fsocket,SOCKSIZE); + } + /**********************************************************************/ static int dochat(int argc,char *argv[],void *p); *************** *** 857,865 **** m = (struct mbx *)p; if(argc < 2){ printf("The escape character is: "); ! if(m->escape < 32) ! printf("CTRL-%c\n",m->escape+'A'-1); ! else printf("'%c'\n",m->escape); return 0; } --- 953,963 ---- m = (struct mbx *)p; if(argc < 2){ printf("The escape character is: "); ! if(m->escape == 0) ! printf("NULL\n"); ! else if(m->escape < 32) ! printf("'Control-%c'\n", m->escape+'A'-1); ! else if(m->escape > 31) printf("'%c'\n",m->escape); return 0; } *************** *** 1242,1247 **** --- 1340,1346 ---- if(m->startmsg != NULLCHAR){ fputs(m->startmsg,network); + fflush(network); free(m->startmsg); m->startmsg = NULLCHAR; } *************** *** 1251,1257 **** gwa = (struct gwalarm *) mallocw(sizeof(struct gwalarm)); gwa->s1 = stdout; gwa->s2 = network; ! set_timer(&gwa->t,240L); gwa->t.func = gw_alarm; gwa->t.arg = (void *) gwa; start_timer(&gwa->t); --- 1350,1356 ---- gwa = (struct gwalarm *) mallocw(sizeof(struct gwalarm)); gwa->s1 = stdout; gwa->s2 = network; ! set_timer(&gwa->t,100L); gwa->t.func = gw_alarm; gwa->t.arg = (void *) gwa; start_timer(&gwa->t); *************** *** 1261,1267 **** for(;;){ if((c = getchar()) == EOF) break; ! if(c == m->escape){ puts("Disconnecting."); if(socklen(fileno(stdin),0)) recv_mbuf(fileno(stdin),NULL,0,NULLCHAR,0); --- 1360,1366 ---- for(;;){ if((c = getchar()) == EOF) break; ! if(!Mauto && c == m->escape){ puts("Disconnecting."); if(socklen(fileno(stdin),0)) recv_mbuf(fileno(stdin),NULL,0,NULLCHAR,0); *************** *** 1680,1686 **** fclose(fp); return 0; } - /* uuencode a file -- translated from C++; both versions copyright 1990 by David R. Evans, G4AMJ/NQ0I --- 1779,1784 ---- ------------------------------ Date: Fri, 26 Aug 94 11:58 PDT From: bruce@pixar.com (Bruce Perens) Subject: Optical isolator for TNC connection To: "'TCP Interest Group at UCSD'" , I see that OMEGA Engineering sells a RS-232 opto-isolation module for $126 . I suppose this might help isolate your computer from your TNC and prevent lightning damange. It says here it's their part number CAT-268, and to get information on it you can call 1-800-848-4271 with your FAX number in hand and request document #6294 to be FAXed back to you. Of course I don't have anything to do with OMEGA, I just read this out of the EDN products edition. I suppose someone must sell RS-232 to fiber transceivers. Bruce Perens AB6YM ------------------------------ Date: Fri, 26 Aug 1994 13:57:36 -0700 From: Phil Karn Subject: Port 513 call/response To: garry@cyanea.apana.org.au () "whod" is not a standard internet service. Are you saying that your service provider expects your machine to run it, and fails to work correctly without it? If so, I'd complain. Phil ------------------------------ Date: Fri, 26 Aug 94 13:26:39 BST From: Martin Lines Subject: Windows and SLIP To: tcp-group@UCSD.EDU Micro$oft have produced TCP/IP drivers for WFW3.11. The available issue appears to only operate over Ethernet (NDIS 3). Does anyone know of a SLIP or PPP version?? mlines@sni.co.uk Regards Martin Lines Network Consultant __________________________________________________________ Home: ||||| ||||| |||||| G1SEO@G1SEO.AMPR.ORG. (no Internet) | | | || G1SEO@GB7TXA | | ||| || 22, Dowding Close | | || || Woodley +44 734 441473 | | | || Reading +44 891 522564 ||||| ||||| |||||| RG5 4NL . UK __________________________________________________________ Work: mlines@sni.co.uk +44 344 850131 Fax: +44 344 850982 __________________________________________________________ ------------------------------ Date: Sat, 27 Aug 1994 16:43:38 +0700 (GMT+7:00) From: "Sahry RA." To: tcp-group@ucsd.edu help ------------------------------ End of TCP-Group Digest V94 #185 ******************************